/* 
 * File:   Ratings.h
 * Author: Quintero
 *
 * Created on February 10, 2012, 8:31 PM
 */
#include <vector>
using namespace std;

#ifndef RATINGS_H
#define	RATINGS_H

double Armor(double level, double base, double armor);
double Defense(double level, double base, double rating);
double Shield(double level, double base, double rating, double genShield);
double Absorb(double level, double base, double rating, double genAbsorb);
double CritChance(int primaryStat, int secondaryStat, int rating, int skills, double level);
double CritSize(int rating, int skills, double level);
double Speed(int rating, int skills, double level);
double BonusHealing(int primaryStat, int power);
double BonusDamage(int primaryStat, int power);
double MH_Accuracy(double rating, double skills, double level);
double OH_Accuracy(double rating, double skills, double level);
double Speed(const vector <double>& stats, double skills);
double TechCritChance(const vector <double>& stats, double skills, bool hasSecondary);
double TechCritSize(const vector <double>& stats, double skills);
double ForceCritChance(const vector <double>& stats, double skills, bool hasSecondary);
double ForceCritSize(const vector <double>& stats, double skills);
double RangedCritChance(const vector <double>& stats, double skills, bool hasSecondary);
double RangedCritSize(const vector <double>& stats, double skills);
double MeleeCritChance(const vector <double>& stats, double skills, bool hasSecondary);
double MeleeCritSize(const vector <double>& stats, double skills);
double Speed(const vector <double>& stats, double skills);
double TechBonusHealing(double power, double primaryStat);
double ForceBonusHealing(double power, double primaryStat);
double TechBonusDamage(const vector <double>& stats);
double ForceBonusDamage(const vector <double>& stats);
double RangedBonusDamage(const vector <double>& stats);
double MeleeBonusDamage(const vector <double>& stats);
double TechBonusDamage(const vector <double>& stats, bool hasSecondary);
double ForceBonusDamage(const vector <double>& stats, bool hasSecondary);
double RangedBonusDamage(const vector <double>& stats, bool hasSecondary);
double MeleeBonusDamage(const vector <double>& stats, bool hasSecondary);
double MH_Accuracy(const vector <double>& stats, double skills);
double OH_Accuracy(const vector <double>& stats, double skills);
#endif	/* RATINGS_H */

